VDC-Based Dynamic Code Analysis: Application to C Programs

نویسندگان

  • Wissam Mallouli
  • Amel Mammar
  • Ana R. Cavalli
  • Willy Jimenez
چکیده

Dynamic code analysis attempts to find errors or vulnerabilities while a program is executing on a real or virtual processor. The objective of dynamic analysis is to reduce debugging time by automatically pinpointing and informing on errors as they occur. The use of dynamic analysis tools can reduce the need for the developer to recreate the precise conditions under which an error, a vulnerability or a security flow occurs. This paper presents a formal approach to detect software vulnerabilities in C programs relying on formal models of vulnerabilities causes called “Vulnerability Detection Conditions” (VDCs). These models provide a formal interpretation of a vulnerability to facilitate its automatic detection using dynamic code analysis tool. To illustrate our approach, a prototype tool TestInv-Code has been developed. It allows to detect the presence of vulnerabilities by checking the VDCs on the execution trace of the studied C program. By traces we mean here the disassembled instructions that are being executed. The tool has been applied on an open source application XINE that contains a known vulnerability to demonstrate its effectiveness.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Dissertation : Incremental Maintenance of Recursive Views with Applications to Tabled Logic Programming

Vulnerability analysis using dynamic attack graphs, dynamic binary analysis for mobile code security, incre-mental bisimulation algorithm. Development of algorithms for incremental evaluation of tabled logic programs and its application to program analysis, generation and analysis of multiple counterexamples for error cause localization, model checking security-relevant properties of sequential...

متن کامل

Guest Lecturer . Principles of Programming Language

Vulnerability analysis using dynamic attack graphs, dynamic binary analysis for mobile code security, incre-mental bisimulation algorithm. Development of algorithms for incremental evaluation of tabled logic programs and its application to program analysis, generation and analysis of multiple counterexamples for error cause localization, model checking security-relevant properties of sequential...

متن کامل

Using Testing Techniques for Vulnerability Detection in C Programs

This paper presents a technique for vulnerability detection in C programs. It is based on a vulnerability formal model called “Vulnerability Detection Conditions" (VDCs). This model is used together with passive testing techniques for the automatic detection of vulnerabilities. The proposed technique has been implemented in a dynamic code analysis tool, TestInv-Code, which detects the presence ...

متن کامل

Accelerating Precise Race Detection Using Commercially- Available Hardware Transactional Memory Support

It is typical for state-of-the-art dynamic race detection algorithms for C programs to slow down an application by a large factor. Our measurements indicate that a significant portion of this slowdown is due to additional lock-based synchronization performed by instrumentation code. This synchronization is necessary to ensure atomic update of analysis state. We present the first precise race de...

متن کامل

Quantitative Information-Flow Tracking for C and Related Languages

We present a new approach for tracking programs’ use of data through arbitrary calculations, to determine how much information about secret inputs is revealed by public outputs. Using a fine-grained dynamic bit-tracking analysis, the technique measures the information revealed during a particular execution. The technique accounts for indirect flows, e.g. via branches and pointer operations. Two...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • J. Internet Serv. Inf. Secur.

دوره 1  شماره 

صفحات  -

تاریخ انتشار 2011